System and method for matching students to schools

ABSTRACT

A match algorithm is provided that matches, rather than filters, students and schools. The output of the algorithm informs the student as to how well he/she matches against every school in the database across many criteria. The student can sort and search through the rankings to identify the schools that are a best match; conversely, school administrators may sort and search through the student profiles to identify students that may be targeted for admission, may be more likely to matriculate to an enrolled student, persist through to the second year, graduate, and/or ultimately give back as an alum. Matches are based on profiles of the characteristics, interests, desires and level of interest and desire of the student matched against the characteristics profile of the college. The student may indicate how important many of these criteria are to him/her. The college information is s provided primarily by the colleges themselves via an annual survey. In addition, Affordability criteria may be generated that may be used as a Match Factor to find schools in the database that most closely fit the student&#39;s ability, willingness and desire to afford the school and minimize the debt burden to attend.

FIELD OF THE INVENTION

The invention relates to a system and method for matching students withthe schools that are the best fit for their characteristics, interestsand desires using a match algorithm that comprehensively matches thestudents' desires and characteristics to available information about theschools. In particular, the invention relates to techniques and devicessuitable for simplifying the selection of a school by an educationseeking family and the selection of a student by a school.

BACKGROUND OF THE INVENTION

For both a college-bound student and a college seeking student,optimized selection of the opposite member pair is obfuscated byasymmetric information. Additionally, both student and college profiledata that might aid in optimized pairings often exists in systems thatdo not commingle the data. This is especially true on the side of theeducation seeking family. This asymmetric information leads tosuboptimal pairings. Students end up at colleges that cost too much ortoo little where the student has a low likelihood of success. This leadsa student to drop out or transfer. Statistics show that 60% of studentschange institutions at least once by the time they graduate. There is acost to the education seeking family and there is a cost to the collegewhen a student does not obtain a degree at a college at which he/shestarted. For example, when a student drops out of the education systemafter freshmen year, the average private school will loose $59,000 intuition, fees, room, and alumni giving, while the average publicinstitution will loose $14,000. It is desired to address this marketinefficiency by better matching students to colleges.

Conventional techniques for matching students to colleges anduniversities include word of mouth, recommendations, college sourcebooks that provide information about the colleges and universities, andon-line systems that permit a student to filter data on the colleges tofind those colleges that meet certain criteria. For example, the studentmay specify that he/she is looking for schools in New Jersey with fewerthan 10,000 undergraduate students and a field hockey team. In response,conventional on-line systems provide a list of the schools that meetthese criteria, but will provide no information at all on how well otherschools might match the student on these or other criteria. Thus,conventional filter-based approaches to school research are only able toprovide a list of the schools that match a student's criteria withoutany real attempt at matching the student to the college.

Numerous websites offer information to a college seeking student toassist in the college selection process. For example, Thatsmycollege.comcreates an on-line community in which applicants, students, formerstudents, high school counselors, and admissions officers may shareinformation about colleges. Others sites, such as Zinch.com, enablesstudents to post a detailed on-line portfolio about themselves forsearch by colleges and also provides college profiles that may besearched by the student. With Zinch.com, the students get to “tell theirstory;” however, no mechanism is provided for matching them by theircharacteristics to a particular college. Other sites, such as Cappex.comand Studentprospector.com, enable students to post on-line profiles thatmay be searched by colleges so that the colleges may choose to contactstudents of interest to the college. Similarly, Applyingtoschool.comenables students to submit a college application that is shared withcolleges so that the colleges may contact students of interest to thecollege. However, none of these sites enable student profiles to bematched with college profiles based on academic, social, financial, andpersistence (i.e., student's likelihood to persist and graduate)criteria. Moreover, none of these sites allow a student to determine themost affordable path to a college education by matching the student'sfinancial needs to the financial aid packages potentially available tothe student. Accordingly, conventional systems leave many unansweredquestions for the student seeking a college or other school (graduateschool, law school, trade school, etc.).

Also, each year, magazines such as U.S. News and World Report providecollege rankings listing the rankings of the colleges in a number ofdifferent categories. However, no mechanism is provided for the studentto determine the highest rated college for that particular student. Forexample, if Princeton is listed as the #1 national university, how isthe student to know that Princeton is the #1 university for thatstudent? A more personalized ranking system is desired that matches thestudent to the schools based on a number of academic, social, financial,persistence and other criteria. In particular, a ranking system isdesired that computes a personalized college ranking list based on whothe student is, where he/she wants to go, and how much he/she can affordto pay. The present invention has been designed to meet such needs inthe art.

SUMMARY OF THE INVENTION

The system and method of the invention addresses the needs in the art byimplementing a match algorithm in connection with a website thattogether matches, rather than filters, students and colleges. Forexample, the system and method of the invention informs the student howwell he/she matches against every school in the database across manycriteria. The student can sort and search through the rankings byvarious means to identify the colleges that are a best match. Inaddition, matches in accordance with the invention are based on thecharacteristics, interests, desires and level of interest and desire ofthe student matched against the characteristics of the college. For thispurpose, the student creates a profile of his/her characteristics,interests and desires. The student may indicate how important many ofthese criteria are to him/her. As a result, in addition to being able toindicate that he/she wants to go to a school in an urban setting inMassachusetts, for example, the student can indicate that he/shestrongly wants to be in an urban setting, while he/she is onlymoderately interested in staying in Massachusetts. The studentinformation is stored in a profile database and is provided primarily bythe student; however, the student profile data also can be verified orsupplemented by guidance counselors, parents, teachers, etc. On theother hand, the college information is stored in a college database andis provided primarily by the colleges themselves via an annual survey.The college data also can be gathered from other public and proprietarysources. In an exemplary embodiment, a quality rating can be associatedwith both the student and the college data points in order to reflectthe reliability of the source of the information.

Each of the student characteristics, interests and desires are inputinto a Match Algorithm that computes a match referred to herein as aMatch Factor. Preferably, the Match Algorithm provides both a rating anda quality score. For example, the rating may be a number of stars (e.g.,one to five stars) indicating the degree to which the student'scharacteristics, interests and desires match with the college. On theother hand, the quality score indicates how much data is available tosupport the rating and the quality and importance of the data. Forexample, if one of the match factors is school cost, then a student'smatch with a school that provides cost information will have a higherquality than the student's match with a school that does not provide thecost information, or with a school whose cost information is two yearsold. Together, the rating and the quality are referred to herein as theMatch Score.

In an exemplary embodiment, the Match Algorithm favors moderation. Forexample, suppose that the student is considering two colleges. One mayoffer a few things that are exactly what the student is looking for, buteverything else is completely unsatisfactory. Another college may not beperfect in any regard, but comes reasonably close in most areas. Given achoice such as this, it is assumed by the Match Algorithm that mostpeople would prefer the second college. In other words, it is assumed bythe Match Algorithm that the students prefer moderation. For thisreason, the Match Algorithm is designed to also prefer moderation. In anexemplary embodiment, the Match Algorithm is based on the Cobb-Douglasfunction (http:en.wikipedia.org/wiki/Cobb-Douglas) that was developed inthe early twentieth century to represent the economic concepts ofproduction and utility.

In an exemplary embodiment, the Match Algorithm also provides both anoverall match and multiple sub-matches. For example, each of the MatchFactors may be classified into one or more categories such as: Social,Academic, Financial, Persistence, Fit, and Feasibility. Categories canoverlap. For example, the same Match Factor may be included in both theSocial and Feasibility categories. As used herein, the Fit categoryrefers to Match Factors that can be thought of as “I Want,” while theFeasibility category refers to Match Factors that are “I Am.” In otherwords, there are Match Factors that reflect student desires, such as thecampus setting, number of undergraduates and intended major. These are“I Want,” or Fit, factors. The other Match Factors, like GPA or how muchthe student can afford to spend, are the “I Am,” or Feasibility Factors.Just as Match Factors are combined into an Overall Match Score, theMatch Factors in each category can be combined using the identicalalgorithm to compute a match score for the category. The student can usesuch “sub-matches” to “drill-down” on the Overall Match Score todiscover, for example, that a school is an excellent Academic match buta poor Social or Financial match, or to find out that there is asignificantly higher quality behind the Academic portion of the OverallMatch Score than behind the Social portion of the Overall Match Score.The student also may use sub-matches together with searching and sortingfeatures in order to discover his/her top Fit or Feasibility matches,which may be very different from each other or from the Overall MatchScore ranking.

The exemplary Match Algorithm also can be used to suggest Target, Reachand Safety schools. For example, the Match Algorithm analyzes thestudent and college data to suggest Target, Reach and Safety schools tothe student, where Target schools are defined as those schools that arethe strongest match between the student and school, based on allavailable information. This correlates to the Overall Match Scoreprovided by the Match Algorithm, and the best Target schools have both ahigh Fit and high Feasibility score. On the other hand, Reach schoolsare commonly defined as schools that a student may not be highlyqualified to be admitted to, or that are so selective that few studentsif any are assured admittance, but that a student would strongly like toattend. Reach schools have strong Fit but low Feasibility scores.Finally, Safety schools are schools that a student does not particularlywant to attend in comparison to their target or reach schools, but onesin which the student is highly likely to be admitted to. Safety schoolstend to have strong Feasibility but low Fit scores.

A system with these and other characteristics defined herein may beimplemented on a web server including a Match Algorithm with access tothe student data and college data described herein for use in conductingthe matching. The web server so configured is accessible by a user via aweb interface to the website. The user may be a student, or someoneacting on the student's behalf, that is searching for a suitablecollege, or a college administrator, or someone acting on behalf of acollege, to identify suitable students for that college. The above andother characteristic features of such a system will be apparent to thoseskilled in the art based on the following detailed description of theinvention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates exemplary Student data objects that store the studentinformation.

FIG. 2 illustrates exemplary School data objects for storing the schoolinformation.

FIG. 3 illustrates exemplary Match Factor data objects for storinginformation related to matches for respective Match Factors.

FIG. 4 illustrates the overall structure of the Match Algorithm pipelineprocess in accordance with the invention.

FIG. 5 illustrates exemplary Match Factor algorithms implemented inaccordance with the invention.

FIG. 6 illustrates on the left hand side a generic Factor Algorithm andon the right hand side an In-State/Out-of-State Algorithm as a specificexample of a Factor Algorithm.

FIG. 7 illustrates another example of a Factor Algorithm, in this casethe ACT Score Factor Algorithm.

FIG. 8 illustrates an exemplary embodiment of a Score Algorithm favoringmoderation.

FIG. 9 illustrates an exemplary embodiment of a Rating Algorithm inaccordance with the invention.

FIG. 10 illustrates an Overall Rating to the student for those schoolsdetermined to best match the student's profile.

FIG. 11 illustrates the ratings for Academic, Social and Financial MatchFactors that make up an Overall Rating.

FIG. 12 illustrates a Saved Schools Manager that stores and managesmatch results for presentation and manipulation by the student.

FIG. 13 illustrates a student profile that a student may make availableto admissions offices or other third parties through the use of a key.

FIG. 14 illustrates a sample graphical user interface through which aschool administrator, for example, may specify the studentcharacteristics sought by the school.

FIG. 15 illustrates the student's perspective of his/her communicationhistory with different schools accessed using the matching system of theinvention.

FIG. 16 illustrates a sample flow chart for calculating Affordabilityusing the techniques of the invention.

FIG. 17 illustrates a profile manager for use by the student to generatea financial profile.

FIG. 18 illustrates a sample print out of the affordability assessment,or estimated award package, for a sample college for which such anAffordability calculation has been conducted in accordance with theinvention.

FIG. 19 illustrates use of the estimated out-of-pocket costs as a MatchFactor.

FIG. 20 illustrates a ranking of the Financial Match Factors fordifferent schools.

FIG. 21 illustrates a user interface for enabling the student to providefinancial information that may be used to assist a third party or acompany associated with the web site operator to offer financialservices that specifically target the student's needs.

FIG. 22 illustrates a login page for the user to login to the matchingsystem of the invention.

FIG. 23 illustrates a welcome page presented to the student after login.

FIG. 24 illustrates a profile manager that guides the student through aseries of questions used to generate the Student Profile.

FIGS. 25-40 illustrate graphic user interfaces including samplequestions for use by the student in providing information for his/herStudent Profile, where such information is used to generate Academic,Social, Financial, Persistence, and other Match Factors.

DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS

A detailed description of an exemplary embodiment of the presentinvention will now be described with reference to FIGS. 1-40. Althoughthis description provides detailed examples of possible implementationsof the present invention, it should be noted that these details areintended to be exemplary and in no way delimit the scope of theinvention.

A. Student Data and School Data

The invention provides a Match Algorithm that compares information abouta student with information about schools to generate a personalizedschool match list. The student and college information used by the MatchAlgorithm is stored in appropriate databases, such as SQL database witha SQL database server. Access to all databases is preferably provided bydata service, rather than ADO.NET or a similar strategy. Of course,conventional web services may also be used for this purpose. In anycase, the physical location of the student and college data is notparticularly relevant to the invention. Wherever the data is stored,before running the Match Algorithm, the student data and college data isbrought into memory and organized for processing by the Match Algorithm.

1. Student Data

Exemplary Student Data objects for storing the student information areillustrated in FIG. 1. As shown, the Student Data preferably includesthe student Identity (User ID, Name, Address and so on) and the studentprofile. The student identity is managed by an Identity managementservice and by a registration database. On the other hand, the studentprofile may be stored as a set of tables indexed by the student's UserID. Each of the questions in the database has a column for the valueindicated by the student (e.g. Setting=Urban). Interest and desirequestions also have a column for the importance assigned to the questionby the student on a scale such as 0-100. Some questions also have a dataquality column, which also ranges on a scale, such as a scale from 0 to1.0 that indicates the quality of the data. For example, the grade pointaverage (GPA) answer may have a data quality column that is initiallyset to, say, 0.5 when the student enters the GPA information. However,when a guidance counselor verifies the GPA information, the data qualityvalue may be increased to 1.0. This data quality value then may be usedby the Match Algorithm to affect the Quality value of the associatedMatch Scores.

The student demographic and student profile data is collected by theMatch Algorithm into a single primary Student class object. Asillustrated in FIG. 1, the demographic data is stored as primitive typeswithin the Student object itself. Most of the profile data, for examplethe ACT Score, is stored as StudentProfileAnswer objects, pointed to bythe Student class object. The StudentProfileAnswer object not onlystores the student's answer but also the importance assigned to thequestion, by either the student or the Match Algorithm, and the dataquality indicator and other information. The student's choice of majorsis stored as a list of StudentMajor objects, which is implemented as asubclass of Major. StudentProfileAnswer and StudentMajor share a commonInterface so that they can be treated interchangeably by other code.

A common interface to the Student Data preferably defines threeproperties: HasAnswer, AnswerIsDontCare, and Importance. HasAnswer is aboolean value that indicates whether the student has (true) or has not(false) answered the corresponding profile question. AnswerIsDontCare isa boolean value that indicates whether the student has indicated thatthey Don't Care or have No Preference with respect to the correspondingprofile question. Importance contains an integer in a range (e.g., 0 to100) indicating the importance of the answer to the match, assignedeither by the student or by the Match Algorithm.

The StudentProfileAnswer also adds three additional properties. Answeris a string containing a code for the answer selected by the student,and Data Quality is the data quality associated with the answer. This iseither the value from the database, if available, or the default valueof 1.0. Question is a string indicating the question for which thisobject is the answer. On the other hand, the StudentMajor class is asubclass of the Major class. In an exemplary embodiment, the Major classhas five properties. CIPCode is a first, second or third-level CIP Code,stored as a string, representing a field of study selected by thestudent. Description is the text description of the major, such as“Animal Nutrition.” FirstLevelMajor, SecondLevelMajor andThirdLevelMajor parse the CIPCode to return the appropriate first,second and third level majors, respectively. The StudentMajor class addsone more property, ForStudent, which is a pointer back to the Studentobject.

2. School Data

Exemplary School Data objects for storing the school information areillustrated in FIG. 2. School Data may be derived from annual surveys ofall American colleges and universities. For example, Peterson's hasdeveloped an “undergraduate database” that includes the results of suchannual surveys. The resulting School Data is stored in a series oftables that contain information on the school's characteristics, such asname, address, setting and size, on the majors offered by the school,and on the fees charged by, and other costs of attending, the school.School Data also may be derived from other public and proprietarysources. The resulting School Data can be used to determine the MatchScore, but must never be displayed to the user. Therefore, the SchoolData is kept in a separate set of tables, even though it describesessentially the same range of information. Additionally, like theStudent Data, the School Data associates a Quality score with each datacolumn. Like the Student's Data Quality, the value ranges from 0 to 1.0and indicates the degree of confidence placed in the School Data basedon the source of the data, the age of the data, and how it was derived.

FIG. 2 illustrates the School data objects used to represent thecollected School Data. School data objects contain data from sourcesthat are not allowed to be displayed. Therefore, the School class ismarked “internal,” which restricts access to the Match Algorithm code.As illustrated, the School class contains most of the collected SchoolData for the school. Information about school tuition, room and boardand other fees is stored in a SchoolFees class, with a pointer from theSchool object to SchoolFees. The Match Algorithm allows the user toselect any number of first, second or third level majors to indicate thefields the student is interested in studying. The Match Algorithm alsoallows “partial credit” for a school if it offers other majors within afirst or second level major category selected by a student. That is, ifthe student selects major 01.0904, Animal Nutrition, then schools thatoffer majors in the first level category 01 or the second level category01.09 could still receive a Match Factor score above zero, even if theschool does not offer 01.0904 itself. In order to allow the MatchAlgorithm to quickly determine whether a school provides first, secondor third level majors related to a particular major selected by astudent, the Match Algorithm constructs a list of Major objects, whereeach object represents one of the first level majors offered by theschool. Within each of these objects there is another list of Majorobjects, where each object represents one of the second level majorsoffered by the school. Similarly, within each one of these objects thereis a third list of Major objects, where each object represents one ofthe third level majors offered by the school. Given any first, second orthird level major CIP Code, the Match Algorithm can quickly traverse thelist and determine how closely the school comes to offering that major.

3. Other Data

The Match Algorithm also may rely upon a zip code database that providesthe latitude and longitude location of every zip code in the UnitedStates. This database may be used by the Match Algorithm to calculatethe distance between a student and a school.

B. CIP Codes

Academic Majors are referenced by their CIP Code. CIP Codes provide athree-level hierarchy of majors. For example, one of the top levelmajors is 01., AGRICULTURE, AGRICULTURE OPERATIONS, AND RELATEDSCIENCES. Under this major are fourteen second-level majors. One is01.09, Animal Sciences. This particular second level major containseight third-level majors, including 01.0904, Animal Nutrition. The CIPCodes are used to represent the Academic Majors offered by a college aswell as the Academic Majors of interest to the student.

C. Match Factors

Each of the student characteristics, interests and desires used by theMatch Algorithm to compute the match is called a Match Factor. EachMatch Factor indicates how well a student and a college match on oneaspect of the match, as well as the importance assigned to the factor(either by the student or by the Match Algorithm), and the quality ofthe data behind the match. As illustrated in FIG. 3, the MatchFactorobject class includes FactorName, which is a string that indicates aname for the Factor, and is useful in debugging. ForFactor, on the otherhand, is a pointer to the FactorAlgorithm object that computed the MatchFactor.

1. Data Quality

The Match Factor DataQuality is one of a number of factors that theMatch Algorithm considers when determining the Quality of a Match Score.DataQuality represents the quality of the data provided by the studentand the school. The MatchFactor provides only this latter qualityindicator. Others, such as the number of factors for which student andcollege data are available, are beyond the ability of the Match Factorto provide, and are considered further along the Match Algorithmpipeline (described below), where the scoring algorithm aggregates thequality of the data. In an exemplary embodiment, DataQuality isspecified on a scale of 0 to 1, where 0 means that the data is asunreliable as if it were produced by a random number generator and 1means that the data is certifiable fact. The Data Quality is computed bymultiplying the quality of the student data times the quality of theschool data.

2. Importance

The Match Algorithm weights the Match Factors differently, depending onhow important each one is to determining how well a student and schoolmatch each other. For most Match Factors, the student may specify howimportant each factor is, as provided by the StudentProfileAnswer. Onlythe student can know, for example, whether that student considers thecampus setting to be more important than the school size or vice versa.For these factors, if a student has not answered a question, or if thestudent has answered Don't Care or No Preference, then the Importance ofthe factor is set to 50. For other factors, the Match Algorithm mustspecify the Importance. For example, it does not really matter howimportant a student considers their GPA to be; it depends on the collegeas to how important GPA is when they consider who to admit into theirfreshman class. For these factors, the Importance is set by the MatchAlgorithm regardless of whether the student and school have provided therelevant data or not.

3. Match Made

A Match Factor may or may not be usable by the Match Algorithm tocompute the match between the student and school. The student may nothave answered the relevant question or questions in his/her profile, orthe necessary data from the school may not be available. More precisely,a match is made if the relevant data is available from the student andthe school, or if the student or school has indicated that they “don'tcare” or have no preference. In the latter case, a fixed value isassigned to the Match Factor, regardless of whether the relevant data isavailable or not.

4. Value

Value is an integer in the range 1 to 100. The FactorAlgorithm cancompute a Value for the match in any conceivable way, from triviallysimple to extremely complex as long as there is a reasonable argument tobe made that the value accurately reflects how well suited the collegeand the student are for each other based on this one characteristic.

D. Match Score

Match Factors indicate the goodness of the match between a student and aschool on one aspect of the match. The Match Factors are combined by theScore Algorithm into a single Match Score that indicates the goodness ofthe match between the student and school on all factors. Additionally,the Score Algorithm categorizes the Match Factors into multiple,possibly overlapping categories, and computes a Match Score for eachcategory. The Score Algorithm preferably meets the goal of preferring“moderation,” that is, a match where many factors are good is preferredto one where a few factors are excellent and the rest are poor. Thereare many possible approaches to calculating a Match Score from the MatchFactors. For example, the Match Algorithm may simply add up all thefactor values and divide by the number of factors. However, thisapproach would not favor moderation. Accordingly, it is presentlypreferred that the Match Algorithm uses the Cobb-Douglas Algorithm,which is a model of production and utility used in modern economics.Other algorithms may also be used. For example, an algorithm may be usedthat does a good job of predicting persistence of students at college.

The general form of the Cobb-Douglas Algorithm is:

$u = {\prod\limits_{i = 1}^{N}\; x_{i}^{ai}}$

That is, utility is equal to a collection of values raised to a powerand then multiplied with each other. In addition, the powers ai shouldadd up to 1 to produce an effect called “constant returns to scale.”That is, if one doubles all the inputs (x_(i)) the output (u) isdoubled. As used by the Match Algorithm, the input values x_(i)represent each Match Factor's Value. The exponents a_(i), which is the“weight” assigned to each Match Factor, represents each match factor'sImportance. More precisely, the exponent is the Match Factor'simportance divided by the total Importance of all made Match Factors.

E. Match Quality

In addition to computing the overall and categorized Match Scores, whichindicates how well the student and the school match, the Score Algorithmalso computes a Match Quality. This value indicates how much informationhas been compared, and what the quality of that information is. If astudent and a school have been compared on many data points, the studentand the school can have much more confidence in the Match Score than ifthey have been compared on just a handful of data points. Further, someof that data may have a lower quality than other data. For example,information about the cost of attending the school may be a year or twoold, and may have had an inflation factor applied, whereas other datamay be more current. Match Quality, then, is a measure of how much datahas been compared between the student and a school and is, in a sense, ameasure of the validity of the Match Rating.

1. Match Made

Match Quality could be computed by dividing the number of Made Factorsby the total number of Match Factors. However, this approach does nottake into account the relative Importance assigned to Match Factors bythe user. For example, if the user adjusts the response for the campussetting question to a low value, then it should matter less if the MatchAlgorithm does not know a school's campus setting. It is also desirableto take into account the quality of the data, consistency of data, andwhether the user had selected Don't Care or a similar selection as theiranswer. Match Made is just one factor in the Quality computation.

2. Importance and Data Quality

If data is missing, or low quality data is being used for a Match Factorthat the student considers to be highly important, then the MatchQuality is lower than if that factor were less important. However, ifthe student or school has indicated that they have no preferenceregarding a Match Factor, then the Match Algorithm knows less about whatthe student or school are looking for than if they made a more activechoice. Therefore, the quality of the match is lower. The MatchAlgorithm handles this situation by assigning a value of 50 to theImportance of matches where No Preference has been specified.

3. Match Quality Algorithm

To compute a value for Match Quality, four quantities are computed:

-   -   MadeImportance This is the sum of the Importance for all Match        Factors where a match was made.    -   TotalImportance This is the sum of the Importance assigned for        all Match Factors.    -   MadeDataQuality This is the sum of the Data Quality for all        Match Factors where a match was made.    -   MadeMatches This is the number of all Match Factors where a        match was made.        The Match Quality between a student and a school equals:

(MadeImportance/TotalImportance)*(MadeDataQuality/MadeMatches)

F. Match Rating

Like the Match Score, the Match Rating indicates the goodness of thematch between the student and school on all factors. The difference isthat whereas the Match Score represents the goodness of the match as aninteger from 1 to 100, the Rating is a value of one, two, three, four orfive stars. Also, like the Match Score, the Match Rating categorizes theMatch Factors into multiple, possibly overlapping categories, andcomputes a rating for each category. Again, the difference is that oneto five stars is assigned rather than a value of 1 to 100. The use ofstars is preferred to the raw score because it groups the schools intomore meaningful equivalence classes, blurs what may be non-meaningfuldistinctions between schools, and allows the student to more easilylocate schools of interest. The Quality attribute of the rating may becopied directly from the Match Score.

G. Match Algorithm Pipeline

FIG. 4 illustrates the overall structure of the Match Algorithm pipelineprocess in accordance with the invention. The illustrated MatchAlgorithm pipeline may be implemented on a web server, server farm,and/or array processor accessible over the Internet or an intranet by amethod call or web service by college and student users via a webbrowser, for example.

As discussed in detail above and illustrated in FIGS. 1 and 2, dataprocessed in the Match Algorithm pipeline comes from two primarysources: student profile data, containing student demographicinformation and answers to questions, in a student database 10, andinstitution data, containing information about schools, in aninstitution database 20. Additional information, such as the latitudeand longitude of all US Zip Codes, is also pulled from a zip codedatabase 30. These databases can be quite large, and repeatedly pullingthe same data can be very time consuming. Accordingly, much of the datamay be cached in data cache 40 using data structures described above.Each Match Factor has a corresponding Factor Algorithm 50, embodied as aclass. Each Factor Algorithm uses the data for a student and a school tocompute a Match Factor, which is placed in the Factor Cache 60.

All the Match Factors for a student and a school are pulled from theFactor Cache 60 by the Score Algorithm 70, which uses them to computethe Match Score and Match Quality as described above. These scores areplaced in the Score Cache 80. All the scores for a student or a schoolare pulled from the Score Cache 80 by the Rating Algorithm 90 to computethe Match Rating (number of stars). The Match Rating, together with thecorresponding Match Quality, is passed into the Rating Cache 100, whereit becomes available for use by external code 110, such as a web pagefor presentation to the user via a web interface.

The goals of the Match Algorithm pipeline architecture illustrated inFIG. 4 are to promote hardware and software flexibility and performance.The Match Algorithm is flexible because new factors can be introducedwithout affecting any of the existing factors. Also, the Score Algorithm70 and Rating Algorithm 90 can be modified or replaced entirely withoutaffecting any other portion of the Match Algorithm pipeline. As more islearned about college retention and other issues, changes like this willlikely be required. The performance is enhanced by caching data, withthe requirement that the caching be invisible to external code. That is,external code does not need to inform the pipeline when cached databecomes invalid.

H. Match Factor Algorithms

FIG. 5 illustrates exemplary Match Factor algorithms implemented inaccordance with the invention. Each Match Factor provided by the MatchAlgorithm is calculated by a subclass of the FactorAlgorithm class. Forexample, there is an AcademicMajorsFactor, an AfordabilityFactor and aDistanceFactor. These algorithms calculate the Match Factor for thefield the student intends to major in, how much the student is willingto pay for college, and how far from home the student would like to goto college.

Each Match Factor Algorithm follows the same general outline, but isunique in how it implements it.

1. Generic Factor Algorithm

FIG. 6 illustrates on the left hand side a generic Factor Algorithm andon the right hand side an In-State/Out-of-State Algorithm as a specificexample of a Factor Algorithm. In general, the generic Factor Algorithmof FIG. 6 begins by creating a new MatchFactor object. The MatchFactorrepresents the Value, Importance, DataQuality, and MatchMade attributesof the match between a student and a school on the factor. As notedabove, a Factor Algorithm is provided for each factor to be matched. Asshown in FIG. 6, after having created the MatchFactor, the FactorAlgorithm assigns an Importance. As discussed above, every MatchFactorhas a default Importance of 50, on a scale of 0 to 100. The Importancecan be altered by the student, if the student sets a slider for thequestion in the graphical user interface and has not answered Don't Careor No preference, or by external code or the Match Algorithm itself forcertain factors, such as Student GPA, where the student's view of theImportance is irrelevant. After assigning Importance, the FactorAlgorithm assigns a Data Quality value. This value ranges from 0 to 1,and by default is 1.0. However, some factors compute a value for theData Quality, which is the Data Quality of the student's data multipliedby the Data Quality of the school's data. The student data can be lessthan 1.0 when it can be verified, say by a Guidance Counselor, but hasnot been. The school data can be less than 1.0 when it has been derivedfrom sources that are less reliable than, for example, the Peterson'sUndergraduate Database. Next, the Factor Algorithm calculates the value,between 1 and 100, representing how well the student and school fit onthis factor. The value can be calculated on a step function, on a normalcurve, or in any way that makes sense. Some factors tend to have a rangeof answers that can be put into a sensible order.

For example, a Campus Setting Match Factor can be either Urban,Suburban, Small Town or Rural, and these can be arranged with Urban atone extreme and Rural at the other. Accordingly, a “distance” may becalculated between the student's choice and the college'scharacteristic. If the distance between extremes (Urban and Rural inthis case) is defined to be 100, then the distance between Suburban andSmall Town might be 33. Having calculated a distance, the distanceitself might be the score for the Match Factor. Or, as in the case ofAffordability, the distance might be applied to a curve. With theAffordability factor, the Factor Algorithm may calculate the differencebetween the amount the student is willing to pay and the amount theschool costs, and call this the distance. It may then be assumed that astudent may be somewhat willing to go to a school that costs more thanthat, but that the willingness will decrease as the cost of the schoolincreases. It is also assumed that this willingness decreases accordingto a Normal distribution that is highest at zero and has a standarddeviation of, for example, $3000 (the “willing to pay” options providedto the student increase in $5000 increments).

It may also be assumed that the student may be willing to go to a schoolthat costs less than what they are willing to pay, but that thiswillingness also decreases as the cost of the school decreases, althoughit decreases less rapidly than when the cost of the school increases.Specifically, in this situation, it may be assumed that the willingnessdecreases according to a normal distribution that is highest at zero andhas a standard deviation of $5000. Finally, as shown in FIG. 6, assumingthat all the relevant data was available and a value could becalculated, the MatchFactor is marked MatchMade. However, when data ismissing from the Student Data or School Data, a match is not made, whichis reflected in a lower completeness value for the score and the rating.

2. In-State/Out-of-State Factor Example

As an example Factor Algorithm, the In-State/Out-of-State FactorAlgorithm of the right hand side of FIG. 6 determines the match betweenthe student and school based on where the student would like to go toschool and where the school is located. As illustrated in FIG. 6, theIn-State/Out-of-State Factor Algorithm begins by creating a MatchFactor.If the student has answered the question, then the Importance assignedby the Student is assigned to the MatchFactor. If there is no dataquality issue for this factor; the MatchFactor retains the default valueof 1.0. The value for the match is derived following the flow chart inFIG. 6. In this example, the value will simply be 1, 50 or 100. If thestudent has expressed No Preference, then the Match Factor for thestudent against any school will have a value of 50. If the studentwishes to attend school in-state, then the Match Factor gets a value of100 for schools that are in the same state as the student, and 1 forschools that are in any other state. On the other hand, if the studentwishes to attend school out-of-state, then the Match Factor gets a valueof 1 for schools that are in the same state as the student, and 100 forschools that are in any other state. Finally, having calculated a value,the Match Made attribute is set to True.

3. ACT Score Factor Example

FIG. 7 illustrates another example of a Factor Algorithm, in this casethe ACT Score Factor Algorithm. The ACT Score Factor Algorithmillustrated in FIG. 7 determines the match between the student andschool based on the student's ACT Score and the school's Average ACTScore of incoming freshman. This Factor Algorithm begins by creating aMatchFactor. The importance of this question is not determined by thestudent but is instead determined by code external to the MatchAlgorithm pipeline since the relevance of the ACT Score is determined bythe school. The value may be hardcoded, or more likely read from anexternal configuration file so that it can be changed as its effect onresults is observed. Also, there is no data quality issue for thestudent data for this factor. Since there is no verification process,the data is assigned a quality of 1.0. On the school side, if the schoolreports their ACT information, it is assigned a Data Quality of 1.0. Onthe other hand, for various reasons many schools do not report anaverage ACT score for their incoming freshman. ACT Score may be derived,however, from various sources and assigned a Data Quality Value lessthan 1.0. Accordingly, the MatchFactor Data Quality value is assignedfrom the school's Data Quality Value.

The value for the Match is derived following the flow chart in FIG. 7.To calculate the value, the difference between the student's score andthe school's value is determined. If the difference is greater thanzero, then the student is above the school's mean. Otherwise, thestudent is below the school's mean. It is assumed that there is agreater likelihood that a student will fit well with a school where theother students have a lower ACT score than where they have a higher one,but that the fit is best where the student's score and the school'sscore are the same, and that the goodness of fit tails off in bothdirections according to a normal distribution. ACT scores range from 0to 36. Accordingly, two normal distributions are pre-calculated whereboth have a maximum value, or Amplitude, at 0. One has a standarddeviation of four, and the other has a standard deviation of three. Theformer distribution is used when the student is above the school'saverage ACT score, and the latter distribution when the student is belowthe school's average. The Probability Density Function of the curve iscalculated at the difference between the student's score and theschool's average score, and divided by the amplitude to get a value inthe range of 0 to 1. This value is multiplied by 99 to get a value inthe range of 0 to 99, and then 1 is added to get a final result in therange of 1 to 100. It should be noted that is important that the valueof the match always be greater than zero since the Score Algorithmmultiplies all the values together, whereby a value of zero for onefactor would result in a value of zero for the entire Match Score.Finally, having calculated a value, the Match Made attribute is set toTrue.

I. Score Algorithm

FIG. 8 illustrates an exemplary embodiment of a Score Algorithm favoringmoderation. As noted above, the Score Algorithm is based on theCobb-Douglas function, which tends to favor moderation, e.g., matcheswhere a broad variety of factors have some degree of compatibility,rather than those where a few factors are very strong while theremaining ones are very weak. The quality aspect of the Score Algorithminforms the user of the relative amount and quality of data that wasused to calculate the score. A score with higher Quality is probablymore valid than a score with less, or less reliable, data. Generally,the Score Algorithm combines all the Match Factors for a student and aschool into a single score and quality. It also computes Score andQuality values for each category (subset of Match Factors) identified bythe Match Algorithm, such as Financial and Academic. The Score Algorithmis identical whether the Overall Score and Quality is being calculatedor a Category Score and Quality is being calculated. The only differenceis which Match Factors are combined; the Overall Score and Qualityvalues are computed using all available Match Factors, whereas aCategory Score and Quality is computed using just the Match Factors thatbelong to that category.

As illustrated in FIG. 8, in order to compute Score or Quality, theScore Algorithm first computes the Total Importance and the MadeImportance. Made Importance is the sum of the Importance of all MadeMatch Factors, while Total Importance is the sum of the Importance ofall Match Factors, regardless of whether the match was made or not. TheScore Algorithm then initializes three values. NumFactorsMade is a countof how many Factors were Made, and is initialized to zero.MadeDataQuality is the total Data Quality of all Made Factors, and isinitialized to zero. The Score is initialized to one. The ScoreAlgorithm then loops over all Match Factors, selecting just the oneswhere the match was made. For each Made Factor, each of the threevariables listed above are updated and NumFactorsMade is incremented byone. The Factor's Data Quality is added to MadeDataQuality. The Score isupdated, according to the Cobb-Douglas Algorithm, by multiplying it bythe Factor's Value raised to the factor's proportional share of thetotal Importance. At the end of this loop, the Score has beencalculated. In order to calculate the Quality of the match, the MadeImportance is divided by the Total Importance, and this is multiplied bythe Made Quality divided by NumFactorsMade.

J. Rating Algorithm

FIG. 9 illustrates an exemplary embodiment of a Rating Algorithm inaccordance with the invention. The task of the Rating Algorithm is toconvert the Match Scores into a simpler to understand one to five starrating. Five star schools are those that the student is most likely tobe a good fit for. One star schools are those that the student is leastlikely to be a good fit for. There are many approaches that could betaken to perform this task, and some are at considerable odds with eachother. The Match Algorithm is designed to allow one algorithm to beeasily substituted for another, and this is very likely to occur overtime. One important characteristic of the Rating Algorithm is whether itproduces five star matches for every student. That is, does the ratingtell the student “This is the best match for you” or “This is the bestmatch possible.” The former approach is fairly simple; the RatingAlgorithm can rank the student against all the schools, sort the resultby Match Score, and the top matches are five star schools. The latterapproach is more complex in that the Rating Algorithm would need to rankmany students against schools and perform a statistical analysis of whatthe best scores are before the star ratings may be assigned. One benefitof the latter approach is that students and schools will see the samerating. However, one drawback is that many students will tend to havemany schools with the identical rating, and so there may be littlebenefit to them for using the website. Another drawback is that onewould need to have a significant number of student Profiles availablebefore one could begin to provide Match Ratings.

Because of these drawbacks, in an exemplary embodiment, the firstapproach is taken for the Rating Algorithm. A student is matched againstall the schools, and the Rating Algorithm then selects approximately thetop ten as five star schools, the next twenty as four star schools, thenext seventy as three star schools, the bottom one hundred as one starschools, and the remainder as two star schools. These cutoff points areonly approximate, because it is desirable that all schools that have atied Match Score and Match Quality have the same Match Rating. So foreach cutoff point, the Match Score and Match Quality of the Match atthat point is examined and then the list is scanned in each direction tofind the points where the Match Score or Match Quality changes.Whichever of these two points is closer to the original cutoff pointbecomes the actual cutoff point.

The Rating Algorithm may provide a match rating based on the OverallScore and/or a rating that is applied to each respective sub-scorecategory, such as Academic and Social. For example, FIG. 10 illustratesan Overall Rating to the student for those schools determined to bestmatch the student's profile, while FIG. 11 illustrates the ratings forAcademic, Social and Financial Match Factors.

1. Dropped Matches

If a school and a student are matched on just a few factors, the oddsare that a complete spectrum of results will be obtained, from extremelypoor to extremely good. However, as the number of factors increases, theodds of an extremely good match decreases, because it becomes harder andharder for the student and school to match well on every single factor.Because of this, if the Match Ratings of a student against all schoolsis simply reported, the top Match Ratings will tend to be schools withfewer data points, i.e., they will have a lower Match Quality. In fact,many of the matches will essentially be invalid. Therefore, the MatchAlgorithm computes a Match Score and Match Quality for the studentagainst all schools, then sorts the list. Approximately twenty-fivepercent of the matches at the bottom of the list are dropped. Again, thecutoff point is approximate because it will slide up or down, asdescribed above, so that all matches with the same Match Score and MatchQuality will either remain in the list or be dropped from it. Sorting ofthe ratings by Match Quality is illustrated in FIG. 10.

In an exemplary embodiment, the match results for a student may be savedby the student in a secure area of the student database 10 for whichaccess is regulated using conventional password login techniques. Thestudent's profile may also be stored in a secure area of the studentdatabase 10 for which access is limited. The stored match results may bemanaged by a Saved Schools Manager routine of the type illustrated inFIG. 12 for presentation and manipulation by the student.

The system of the invention may also provide a way for a student to makea visually pleasing version of his/her Student Profile of the typeillustrated in FIG. 13 available to admissions offices through the useof a key. In particular, through the selection of a check-box, a studentcan choose to make his profile available to a member of the generalpublic. Upon selection of the option, the student has the option to adda password to the public profile. If the student makes his profilepublic and chooses a password, the profile will exist at a URL. In orderfor a member of the public to access the profile, the student must sharethe URL with the member of the public. The student must also share thepassword. When the member of the public goes to the URL, the member ofthe public will be prompted to submit the password that the studentcreated for access to the profile. Thus, the student profile may beaccessed by those parties to which the student grants access to thestudent's profile in student database 10. On the other hand, the storedinformation may be forwarded to third parties by the student usinge-mail, for example.

2. School Perspective

The description of the Match Algorithm pipeline and its interfaces hasbeen described herein, for simplicity, principally from the perspectiveof a student looking for schools. However, the system also allows aschool to look for students in an analogous manner, with importantbenefits to the school over traditional approaches in that the schoolmay seek students with particular characteristics and then solicit thestudent. The Match Factor and score portions of the Match AlgorithmPipeline work exactly the same way, whether ranking students againstschools or schools against students. The only difference in the MatchAlgorithm pipeline is that an application program interface (API) methodfor rating the school (Rate(School)) with respect to all or part of thestudents is called, instead of the API method for rating the student(Rate(Student)) with respect to all or part of the schools. Rate(School)creates a list of all the student profiles in the database and asks theScore Algorithm for the score of the school against all these students.The Rating Algorithm then drops the lowest quality matches, just as whenrating a Student. FIG. 14 illustrates a sample graphical user interfacethrough which a school administrator, for example, may specify thestudent characteristics sought by the school.

As noted above, various Rating Algorithms are possible and a particularRating Algorithm may generate different ratings when rating a studentthan when rating a school. That is, even though the scores areidentical, scores are converted to stars in a way that producesdifferent stars for the same school/student pair, depending on whetherthe system is rating the student or the school. For example, School Xmay be the best school for Student Y, and therefore X is rated fivestars for Y. However, there may be many students that are a better fitfor X, and therefore Y is rated three stars for X. When rating studentsfor a school, the Rating Algorithm assigns a five star rating toapproximately the top ten percent of students in the list. Four starsare assigned to the next twenty percent. Three stars are assigned to thenext twenty percent. Two stars are assigned to the next twenty fivepercent, and one star is assigned to the remaining twenty-five percent.Again, as above, the division points are slid either up or down toensure that all matches with the same score are assigned the samerating.

It should also be noted that the API may also permit a student to matchhimself/herself with respect to a particular school (as opposed to theentire school database), and vice-versa. In addition, the system of theinvention may further provide a number of on-line tools that enablestudents and schools to leverage the information in each other'sprofiles. For example, as just noted, the Match Algorithm may be used todetermine how well particular student and school profiles match. Searchtools may also be provided that allow students and colleges to matchprofiles to find, for example, colleges that offer water polo orstudents who play water polo. Communication tools may also be providedthat allow students to request information from colleges on-line and forcolleges to request information from students on-line. For example, theillustrated match results could also include email links to therespective schools found in the match. Similarly, assuming the studenthas approved the release of his/her information to the college, emaillinks to students may also be provided to the colleges as a result of astudent match run by a school administrator, for example.

As another example, if a student is interested in learning about aparticular school, the student can bring up a page that containsinformation about that school. If more information is needed, thestudent can click a link or button that sends a message to the schoolalong with contact information (e.g., name, address, e-mail, phone) forthe student. The school could then send brochures, pamphlets, and otherpromotional material directly to the interested student. On the otherhand, if a college purchases a set of names based on a student search,the college can obtain a minimal set of information about the student asallowed under applicable privacy laws. The college may also send anemail invitation to the student, inviting that student to contact theschool as above to obtain more information. The college further decidesif it has too little, too many, or just the right amount of identifiedmatches. If there are too little or too many, the college may search foradditional candidates or further refine the list using the studentsearch techniques described above. On the other hand, if the college hasthe right amount of student matches, the college may agree to pay apredetermined amount per name. The system sends each student aninvitation to release the student's information to the college. If thestudent approves the release of her information to the college, thecollege gets charged per name. However, if the student rejects therequest, the college does not incur a charge. FIG. 15 illustrates thestudent's perspective of this process.

K. Matching Based on Affordability

As noted above, one of the Match Factors used to match students andschools is Financial. This Match Factor may be derived from a number ofcharacteristics provided in the Student Data and the School Data. Aswill now be described, such a Match Factor further enables the systemand method of the invention to incorporate into the Match Algorithm theconcept of Affordability. In other words, Affordability may be aseparate category of Match Factors used in the Match Algorithm to enablea student and the student's family to determine the relative match witha school taking into consideration the student's ability and willingnessto afford that school. In particular, by matching the student to aschool based on Affordability, the system of the invention allows thestudent to find a school that will ultimately maximize affordability andminimize debt for the student, while also optimizing the student'slearning experience based on general compatibility with the school basedon the profile match.

Affordability Defined

The Affordability component of the Match Algorithm may be considered initerative stages. These are defined below.

Stage One

The first stage of affordability assessment encompasses using the USDepartment of Education's federal financial aid calculation (a.k.a., TheFederal Methodology) to determine the student and family's financialstrength. This is an annual process for aid seeking students and theonline application is found at www.fafsa.ed.gov The result of theFederal Methodology is a number called the Expected Family Contribution(EFC). The EFC is a measure of the family's financial strength and isused by schools' financial aid offices to award student aid according tofederal, state and institutional rules and regulations. The FederalMethodology is published annually and the ability to calculate an EFC iswidely available. Accordingly, the student may provide his/her EFC, ifknown, in the Student Data to bypass the actual calculation, as desired.

In addition to the EFC, Affordability may also incorporate:

1. Student and parent supplied answers to questions asking the student'sinterest in student loans and work programs as well as the student'sperceived ability to pay for and savings for college.

2. Ability to provide the amount of any outside scholarships to beconsidered in the overall financial aid award package for determiningout-of-pocket expenses.

3. Ability to provide the amount of any planned additional Private orParent Loan for Undergraduate Students (PLUS) loans to be considered inthe overall financial aid award package for determining out-of-pocketexpenses.

For Stage One, once the EFC and student dependency (according to theFederal Methodology) is determined, the student is able to choose from aset of financial aid profiles. These profiles may be presented as a low,medium and high EFC-based aid award examples. Aid awards are based onfederal award methodology (i.e. Pell Grant tables ) and nationalaverages (i.e. Campus Based Aid programs like Federal Work Study andPerkins Loan). In addition, the student has the ability to input asStudent Data his/her scholarships awarded, and/or additional loanoptions to consider. This information creates an “Estimated PotentialAid” of Scholarship, Federal Grant, Federal Loan and Private Loaneligibilities, which is passed to the student Match Factor list. As afunction of the matching of the Affordability Match Factors, a studentis able to see which colleges have matched to him/her using the MatchAlgorithm as well as the projected 2 or 4-year costs and 2 or 4-year outof pocket expenses based on the type of college ( Out of Pocketexpenses=4 year costs−4 years of potential aid as calculated above).This gives the student a full collegiate career analysis of theaffordability of the school they are matching by taking financial aidinto consideration. In this fashion, the system of the invention maypresent the aid package to the student on a school-to-school basis asone of the factors in matching to the school.

Stage Two:

The second stage of affordability assessment includes customizing thestudent aid awards based on the exact student EFC. This differs fromStage One above in that in Stage One a student is presented with achoice of low, medium and high EFCs. Stage Two uses the student'ssupplied or calculated EFC and determines the exact aid awards asappropriate. This second stage expounds on Stage One as it furtherpersonalizes the affordability component by allowing a student a moreaccurate assessment of the aid that is available. In addition, Stage Twoaffordability is also a Match Factor in the Match Algorithm. In StageOne, the information is supplied and presented to the student but is notpart of the matching calculation. In Stage Two, the out of pocket costsfor the student will be used as a function of the algorithm'scalculation in reference to the students desire to take affordabilityinto account for the calculation. In this fashion, the system uses astudent's personalized aid award package, combines it with the MatchAlgorithm, and combines the result with other college match factors tocreate a unique match to every school in the database.

Stage Three:

Affordability in Stage Three expounds upon Stage Two calculations byfurther including state-by-state specific scholarship and grant programsand institutionally based scholarship programs as supplied by the schooland by providing institutional-specific financial aid cost of attendancefigures (which include, personal, miscellaneous and transportation costsin addition to tuition/fees and room/board charges) for a more accuratecalculation of aid. Affordability calculation in Stage Three thus fullyencompasses an institution-by-institution based analysis on a perstudent basis for the affordability calculation by the Match Algorithm.

FIG. 16 illustrates a sample flow chart for calculating Affordabilityusing the techniques herein described. As illustrated in FIG. 17, thestudent provides responses to financial questions to create a financialprofile, and the responses are used to calculate the EFC for thestudent. The system compares average financial aid packages at variousEFC levels to a student's calculated EFC. By combining a projectedfinancial aid package with the school's cost data, the system canaccurately project student-to-school out-of-pocket costs on aschool-by-school basis. FIG. 18 illustrates a sample print out of theaffordability assessment, or estimated award package, for a samplecollege for which such an Affordability calculation has been conductedin accordance with the invention. As noted above, this Affordabilitycalculation may be used as a Match Factor in matching the student to aschool and vice-versa. Use of the estimated out-of-pocket costs as aMatch Factor is illustrated in FIG. 19, and a ranking of the FinancialMatch Factors for different schools is illustrated in FIG. 20.

The Affordability matching technique of the invention may also be usedas a way for the system to generate and display a list of colleges thathave the potential to maximize the return on investment for the student.The list is sourced from the analysis of the Match Algorithm asdescribed above. As has been noted, the Match Algorithm matches acrossAcademic, Social, and Financial inputs. If it is assumed that a student(Jane) has told the system about her academic and social preferences, itis safe to assume that a subset of good matches would be affordablematches defined as those matches that minimize out-of-pocket expensesand minimize education-related debt. In order to identify schools thatminimize out-of-pocket expenses and debt, an analysis of the averagefinancial aid packages received by families similar to Jane's isperformed. The out-of pocket cost for Jane's target school then is afunction of the school supplied costs minus the estimated aid packagewhich has been calculated for her. It is noted that average financialaid packages awarded by colleges is known using federal and state awardtables, national averages and maximum loan limits. Additional details,such as Jane's desired timeline (3, 10, 20, or some other number ofyears after graduation) to payoff education-related debt, could furtherinform high quality school matches across the financial dimension.

The Affordability matching may also provide a way for the colleges togenerate a list of students that have a high likelihood to maximizetuition, fee, room, and donations. A college can match against the listby profile criteria to determine those students meeting certainfinancial characteristics. Conversely, as illustrated by the userinterface in FIG. 21, the Affordability matching may also be used toassist a third party or a company associated with the web site operatorto offer financial services that specifically target the student'sneeds.

Matching students to colleges across academic, social, and financialcriteria alone can go a long way in identifying students that have ahigh likelihood to persist and graduate from a particular college.Retention research in the public domain identifies a handful of factorsthat correlate highly to retention. For example, the higher the level ofdegree earned by a student's mother, the higher the likelihood a studentwill persist and graduate. Beyond these nationally identified factorsthat predict college retention there may be school specific factors. Forexample, a school might find that students who live within 10 miles ofcampus persist and graduate or donate at higher rates than otherstudents. By supplying that data as part of the School Data, such datamay be factored into the Match Algorithm to enable schools to find thestudents who have the greatest likelihood to persist and graduate fromor donate to a specific school.

Thus, colleges may query the Student Data for students who match adesired profile. A profile might be, for example, students who livewithin 100 miles of campus, who love math, who have a low householdincome, who are Catholic, and who are seeking a campus with more than2,000 students. Beyond simply selecting these students from the StudentData, the Match Algorithm will filter out those students it deems arenot a good match for the inquiring school. An example screen shot of aprospect finder for this purpose is illustrated in FIG. 14.

The Affordability Match also provides a way for the student to see—on aschool by school basis—a precise estimate of expected out-of-pocketcost. Thus, based on a family's household financial information,financial aid information from the colleges may be leveraged to producean estimated sticker price which varies from the list tuition price. Asnoted above, this may be done by receiving asset information from thestudent's family and analyzing the average financial aid packagesreceived by families similar to a family seeking this analysis. Theestimated financial aid package that a specific family might receive canthen be subtracted from the list price of tuition.

L. Graphical User Interface

FIGS. 22-40 illustrate examples of a graphical user interface forinteracting with the student/college matching system of the invention.

FIG. 22 illustrates a login page for the user to login to the matchingsystem of the invention. As illustrated, the user is solicited toprovide a user ID and password to enable system access. Once the properuser ID and password is provided, the student is presented with awelcome page, such as that illustrated in FIG. 23. In FIG. 24, the userhas further selected the option of updating his/her Student Profile. Aprofile manager guides the student through a series of questions used togenerate the Student Profile. Sample questions for completing theStudent Profile are illustrated by way of example in FIGS. 25-40. Asillustrated in FIGS. 35-40, such questions may also elicit financialinformation for development of the aforementioned Affordability MatchFactor. Similar interfaces may be provided to enable schooladministrators to enter the profile data for the school, or else theSchool Data may be directly imported from survey responses and the like.

M. Software Implementation

Although not required, the Match Algorithm pipeline can be implementedin whole or in part via an operating system (OS), for use by a developerof services for a device or object, and/or included within applicationsoftware that operates in connection with any virtualized OS used forimplementation of the invention. Software may be described in thegeneral context of computer-executable instructions, such as programmodules, being executed by one or more computers, such as clientworkstations, servers or other devices. Generally, program modulesinclude routines, programs, objects, components, data structures and thelike that perform particular tasks or implement particular abstract datatypes. Typically, the functionality of the program modules may becombined or distributed as desired in various embodiments. Moreover,those skilled in the art will appreciate that the invention may bepracticed with a variety of computer system configurations andprotocols. Other well known computing systems, environments, and/orconfigurations that may be suitable for use with the invention include,but are not limited to, personal computers (PCs), server computers,hand-held or laptop devices, multi-processor systems,microprocessor-based systems, programmable consumer electronics, networkPCs, appliances, minicomputers, mainframe computers and the like. Theinvention also may be practiced in distributed computing environmentswhere tasks are performed by remote processing devices that are linkedthrough a communications network/bus or other data transmission medium.In a distributed computing environment, program modules may be locatedin both local and remote computer storage media including memory storagedevices, and client nodes may in turn behave as server nodes.

A server or other computer implementing the Match Algorithm typicallyincludes a variety of computer readable media. Computer readable mediacan be any available media that can be accessed by a computer andincludes both volatile and nonvolatile media, removable andnon-removable media. By way of example, and not limitation, computerreadable media may comprise a variety of computer storage media.Computer storage media includes both volatile and nonvolatile, removableand non-removable media implemented in any method or technology forstorage of information such as computer readable instructions, datastructures, program modules or other data. Computer storage mediaincludes, but is not limited to, RAM, ROM, EEPROM, flash memory or othermemory technology, CDROM, digital versatile disks (DVD) or other opticaldisk storage, magnetic cassettes, magnetic tape, magnetic disk storageor other magnetic storage devices, or any other computer readable mediumthat may be used to store the desired information and which can beaccessed by a computer. Combinations of any of the above should also beincluded within the scope of computer readable media. It is specificallycontemplated that the methodology described herein is implemented insoftware in computer readable media that may be read by a computerprocessor for reconfiguration of the general purpose computer into adevice or system for implementation of the system described herein.

As mentioned, the various techniques described herein may be implementedin connection with hardware or software or, where appropriate, with acombination of both. Thus, the methods and apparatus of the invention,or certain aspects or portions thereof, may take the form of programcode (i.e., instructions) embodied in tangible media, such as CD-ROMs,DVDs, flash drives, hard drives, or any other machine-readable storagemedium, wherein, when the program code is loaded into and executed by amachine, such as a computer, the machine becomes an apparatus forpracticing the invention. In the case of program code execution onprogrammable computers, the computing device generally includes aprocessor, a storage medium readable by the processor (includingvolatile and non-volatile memory and/or storage elements), at least oneinput device, and at least one output device. One or more programs thatmay implement or utilize the techniques of the invention, e.g., throughthe use of a data processing API, reusable controls, or the like, arepreferably implemented in a high level procedural or object orientedprogramming language to communicate with a computer system. However, theprogram(s) can be implemented in assembly or machine language, ifdesired. In any case, the language may be a compiled or interpretedlanguage, and combined with hardware implementations.

While the invention has been described in connection with the preferredembodiments of the various figures, it is to be understood that othersimilar embodiments may be used or modifications and additions may bemade to the described embodiment for performing the same function of theinvention without deviating therefrom. Therefore, the invention shouldnot be limited to any single embodiment, but rather should be construedin breadth and scope in accordance with the appended claims. Forexample, while the exemplary embodiment is described in the context ofmatching students and colleges, the system described herein may also beused to match students to all types of schools or learning institutionssuch as law schools, medical schools, business schools, graduateprograms, universities, trade schools, boarding schools, and the like.Further, the algorithms and processes are intended as specificimplementations only and are not intended to delimit the scope of theinvention, which should instead be understood with reference to thefollowing claims.

1. A method of matching a student to a learning institution, comprising:accepting information from a student relating to the student'scharacteristics and interests in a learning institution and creating astudent profile for the student; accepting information relating to thecharacteristics of a plurality of learning institutions and creating aninstitution profile for each respective learning institution; matchingthe student profile with the institution profiles to identify thoselearning institutions of the plurality of learning institutions thatbest match the student's characteristics and interests; and providing alisting of the best matched learning institutions to the student.
 2. Amethod as in claim 1, further comprising accepting an indication fromthe student indicating how important certain characteristics of thelearning institution is to the student.
 3. A method as in claim 1,further comprising determining the reliability of the data representingthe student's characteristics and/or the reliability of the datarepresenting the characteristics of respective learning institutions. 4.A method as in claim 3, further comprising ranking the listing based onthe reliability of the data used in the matching.
 5. A method as inclaim 1, wherein the matching matches the student profile to institutionprofiles using a moderation algorithm whereby a learning institutionwith characteristics similar to each respective characteristic of thestudent profile is preferred over a learning institution that closelymatches certain characteristics of the student profile but does notclosely match other characteristics of the student profile.
 6. A methodas in claim 1, wherein the matching provides overall matches between thestudent profile and the respective institution profiles and one or moresub-matches between certain characteristics of the student andcorresponding characteristics of the respective learning institutions.7. A method as in claim 1, wherein the student profile includesfinancial information regarding the student's modality of payment for aneducation.
 8. A method as in claim 7, further comprising presentingeducation financing options to the student based on a match between thestudent's financial information and cost information for the student forattending the school.
 9. A method as in claim 1, wherein the studentprofile includes persistence information regarding the likelihood thatthe student will persist as a student and graduate.
 10. A method as inclaim 1, wherein the matching includes matching the student to a schoolbased on factors relating to the fitness of the student to attend theschool and the feasibility that the student may be admitted to theschool over other candidates.
 11. A method of identifying studentcandidates for attendance at a learning institution, comprising:accepting information from a plurality of students relating to thestudents' characteristics and interests in a learning institutionwhereby the information is indicative of whether the student is likelyto move from a point of interest to an actually enrolled student andpersist to graduation, and creating student profiles for the students;accepting information relating to the characteristics of the learninginstitution and creating an institution profile for the learninginstitution; matching the institution profile with the student profilesto identify those students of the plurality of students that best matchthe institutions characteristics and interests; and providing a listingof the best matched students to the learning institution.
 12. A methodas in claim 11, further comprising enabling the learning institution tosend a solicitation to a student and for the student to release his orher contact information and/or student profile to the learninginstitution.
 13. A method as in claim 11, further comprising chargingthe learning institution for access to said listing, the cost of theaccess being proportionate to the quality and/or the quantity of thematches in the listing.
 14. A system for matching a student to alearning institution, comprising: a student database including a studentprofile including information relating to the student's characteristicsand interests in a learning institution; a learning institution databaseincluding an institution profile for each respective learninginstitution, each institution profile including information relating tothe characteristics of the respective learning institution; a matchingalgorithm that matches the student profile with the institution profilesto identify those learning institutions of the plurality of learninginstitutions that best match the student's characteristics andinterests; and a user interface that provides a listing of the bestmatched learning institutions to the student.
 15. A system as in claim14, wherein the matching algorithm includes a plurality of factoralgorithms that match each characteristic of the student tocorresponding characteristics of the learning institution to creatematch factors.
 16. A system as in claim 15, wherein the matchingalgorithm further includes a score algorithm that calculates matchscores between the student and each learning institution using weightedcombinations of said match factors.
 17. A system as in claim 16, whereinthe matching algorithm further includes a rating algorithm that ratesthe match between the student and each learning institution using saidmatch scores.
 18. A system as in claim 17, wherein the rating algorithmfurther determines a quality score for the match based on thereliability of the data used in the student profile and each institutionprofile and ranks the listing based on the quality score.
 19. A systemas in claim 14, wherein the matching algorithm includes a moderationalgorithm whereby a learning institution with characteristics similar toeach respective characteristic of the student profile is preferred overa learning institution that closely matches certain characteristics ofthe student profile but does not come close to matching othercharacteristics of the student profile.
 20. A system as in claim 14,wherein the matching algorithm matches the affordability of the learninginstitution by the student based on financial information regarding thestudent's modality of payment for an education.
 21. A system foridentifying student candidates for attendance at a learning institution,comprising: a student database including a plurality of student profilesincluding information relating to the student's characteristics andinterests in a learning institution whereby the information isindicative of whether the student is likely to move from a point ofinterest to an actually enrolled student and persist to graduation; alearning institution database including an institution profile for thelearning institution including information relating to thecharacteristics of the respective learning institution; a matchingalgorithm that matches the respective student profiles with theinstitution profile to identify those students of the plurality ofstudents that best match the institution's characteristics andinterests; and a user interface that provides a listing of the bestmatched students to the learning institution.
 22. A system as in claim21, further comprising means for enabling the learning institution tosend a solicitation to a student and for the student to release his orher contact information and/or student profile to the learninginstitution.
 23. A computer readable medium containing instructions thatwhen processed by a processor cause the performance of the steps of:matching at least one student profile including the at least onestudent's characteristics and interests in a learning institution withat least one institution profile including the characteristics of saidat least one learning institution to identify a degree of matchingbetween the respective students and learning institutions; and providinga listing of the degree of matching between said at least one learninginstitution to said at least one student.
 24. A computer readable mediumas in claim 23, further comprising instructions that enable a student toindicate how important certain characteristics of the learninginstitution are to the student and to weight respective characteristicsfor matching based on the indicated importance.
 25. A computer readablemedium as in claim 23, further comprising instructions that weightcharacteristics based on the reliability of the source of the datarepresenting the student's characteristics and/or the reliability of thedata representing the characteristics of respective learninginstitutions.